The character recognition approach requires writing characters using a pen to naturally write an entire character on a graphics tablet. In this approach, the character recognition technique attempts to find the character that most closely matches the strokes entered on the tablet and returns the results. The faster the results are returned, the better a user's experience will be. Conventional character recognition techniques typically have a fundamental bottleneck in detecting when the user finishes writing. This problem is even more severe when writing characters of scripts, such as Indic, Arabic, South-east Asian, and the like, which have complex shapes and can require writing these shapes using multiple strokes.
Conventional ways for detecting that a user has finished writing and that character recognition should be triggered typically include one or more of the following techniques:
First, a timer is set upon detecting that the user has lifted the pen off the character recognition surface, such as the graphics tablet, which be referred to as a pen-up event. If a pen-down event, which occurs when a user places the pen on the character recognition surface, is not detected before the timer expires, it is inferred that the user has finished writing. The problem with this technique is preferred timer values can vary from user to user depending on the users' writing speeds.
Second, if the user touches outside of a current character recognition task area or inside a next task area, the pen-down event is interpreted as completion of the handwriting to be recognized from the current task area. The problem with this technique is it does not take advantage of the time between when the user lifts the pen from the current task area and when the user puts the pen down in the next task area.
Third, if the user presses a soft key, labeled “end” or the like, the button-pressed event is interpreted as an indication from the user that the user is finished writing and that recognition should be triggered. This technique reduces the quality of the user's experience by requiring many button presses. The repeated hand movement associated with these button presses can get tiresome, and can be a significant overhead from the user's point of view, and can disturb the user's train of thought in composing sentences.
The above conventional techniques, for determining when a user has stopped writing in a character recognition task, can have even more shortcomings, when writing characters of scripts, such as Indic, Arabic, South-east Asian, and the like, which have complex shapes and can require multiple strokes to write a single character or a sub-word unit.